cmake_minimum_required(VERSION 3.9)
project(server)

set(CMAKE_CXX_STANDARD 11)

include_directories(server_frame/include)
include_directories(server_frame/include/aoi)
include_directories(server_frame/include/astar)
include_directories(server_frame/include/config)
include_directories(server_frame/include/crypt)
include_directories(server_frame/include/dbmysql)
include_directories(server_frame/include/framework)
include_directories(server_frame/include/fundamental)
include_directories(server_frame/include/helper)
include_directories(server_frame/include/lua_service)
include_directories(server_frame/include/math)
include_directories(server_frame/include/modern)
include_directories(server_frame/include/network)
include_directories(server_frame/include/packet)
include_directories(server_frame/include/redisclient)
include_directories(server_frame/include/redisclient/impl)
include_directories(server_frame/include/utility)
include_directories(server_frame/src/framework)
include_directories(server_frame/src/network)
include_directories(servers/center_server/src)
include_directories(servers/common/src)
include_directories(servers/dbagent_server/src)
include_directories(servers/lobby_server/src)
include_directories(servers/pb/src)
include_directories(server_frame/include/third)

add_executable(server
        server_frame/include/aoi/quad_tree.hpp
        server_frame/include/aoi/rect.hpp
        server_frame/include/aoi/scene.h
        server_frame/include/aoi/vec2.hpp
        server_frame/include/astar/astar.h
        server_frame/include/astar/blockallocator.h
        server_frame/include/config/config.h
        server_frame/include/config/csvreader.h
        server_frame/include/crypt/aes.h
        server_frame/include/crypt/base64.hpp
        server_frame/include/crypt/blowfish.h
        server_frame/include/crypt/mars.h
        server_frame/include/crypt/md5.h
        server_frame/include/crypt/net_encrypt.h
        server_frame/include/crypt/serpent.h
        server_frame/include/crypt/sha1.h
        server_frame/include/crypt/url_encode.h
        server_frame/include/crypt/xor256.h
        server_frame/include/dbmysql/db_task.h
        server_frame/include/dbmysql/db_wrap.h
        server_frame/include/dbmysql/dbmysql.h
        server_frame/include/dbmysql/sql_join.h
        server_frame/include/ebus/event_bus.hpp
        server_frame/include/ebus/frame_event.hpp
        server_frame/include/file/directory.hpp
        server_frame/include/file/file.hpp
        server_frame/include/file/filehelper.h
        server_frame/include/framework/application.h
        server_frame/include/fundamental/common.h
        server_frame/include/fundamental/cyclebuffer.h
        server_frame/include/fundamental/cyclebuffer_shm.h
        server_frame/include/fundamental/hashtable.h
        server_frame/include/fundamental/hashval.h
        server_frame/include/fundamental/linkcache.h
        server_frame/include/fundamental/multiprocesshashtable.h
        server_frame/include/fundamental/ring_buff.h
        server_frame/include/fundamental/variablehashtable.h
        server_frame/include/fundamental/variablelengthhashtable.h
        server_frame/include/helper/bufferStream.h
        server_frame/include/helper/fileStream.h
        server_frame/include/helper/helper.h
        server_frame/include/helper/streamBase.h
        server_frame/include/helper/stringStream.h
        server_frame/include/lua_service/lua_bind.h
        server_frame/include/lua_service/lua_service.h
        server_frame/include/math/box2.h
        server_frame/include/math/math_functions.h
        server_frame/include/math/point2.h
        server_frame/include/math/point3.h
        server_frame/include/math/random.hpp
        server_frame/include/math/rank.h
        server_frame/include/math/rect.h
        server_frame/include/memory/ipcutility.h
        server_frame/include/memory/object_pool.hpp
        server_frame/include/memory/shm_cache_mgr.h
        server_frame/include/utility/noncopyable.hpp
        server_frame/include/network/byte_buffer.h
        server_frame/include/network/message_head.h
        server_frame/include/network/tcp_callbacks.h
        server_frame/include/network/tcp_client.h
        server_frame/include/network/tcp_conn.h
        server_frame/include/network/tcp_server.h
        server_frame/include/packet/inner_protobuf_pkg.h
        server_frame/include/packet/protobuf_handle.h
        server_frame/include/packet/protobuf_pkg.h
        server_frame/include/redisclient/impl/pipeline.cpp
        server_frame/include/redisclient/impl/redisasyncclient.cpp
        server_frame/include/redisclient/impl/redisclientimpl.cpp
        server_frame/include/redisclient/impl/redisclientimpl.h
        server_frame/include/redisclient/impl/redisparser.cpp
        server_frame/include/redisclient/impl/redissyncclient.cpp
        server_frame/include/redisclient/impl/redisvalue.cpp
        server_frame/include/redisclient/impl/throwerror.h
        server_frame/include/redisclient/config.h
        server_frame/include/redisclient/pipeline.h
        server_frame/include/redisclient/redisasyncclient.h
        server_frame/include/redisclient/redisbuffer.h
        server_frame/include/redisclient/redisparser.h
        server_frame/include/redisclient/redissyncclient.h
        server_frame/include/redisclient/redisvalue.h
        server_frame/include/redisclient/version.h
        server_frame/include/string/string.hpp
        server_frame/include/string/string_functions.h
        server_frame/include/string/stringutility.h
        server_frame/include/thread/locked_queue.h
        server_frame/include/thread/rwlock.hpp
        server_frame/include/thread/spinlock.hpp
        server_frame/include/thread/thread_pool.h
        server_frame/include/time/cooling.h
        server_frame/include/time/time.hpp
        server_frame/include/utility/basic_functions.h
        server_frame/include/utility/basic_types.h
        server_frame/include/utility/comm_macro.h
        server_frame/include/utility/profile_manager.h
        server_frame/include/utility/puid.hpp
        server_frame/include/utility/singleton.h
        server_frame/include/svrlib.h
        server_frame/src/astar/astar.cpp
        server_frame/src/astar/blockallocator.cpp
        server_frame/src/config/csvreader.cpp
        server_frame/src/crypt/aes.cpp
        server_frame/src/crypt/blowFish.cpp
        server_frame/src/crypt/mars.cpp
        server_frame/src/crypt/md5.cpp
        server_frame/src/crypt/net_encrypt.cpp
        server_frame/src/crypt/serpent.cpp
        server_frame/src/crypt/sha1.cc
        server_frame/src/crypt/url_encode.cpp
        server_frame/src/dbmysql/db_task.cpp
        server_frame/src/dbmysql/db_wrap.cpp
        server_frame/src/dbmysql/dbmysql.cpp
        server_frame/src/dbmysql/dbmysql_exception.cpp
        server_frame/src/dbmysql/dbmysql_result.cpp
        server_frame/src/dbmysql/dbmysql_statement.cpp
        server_frame/src/dbmysql/dbmysql_transaction.cpp
        server_frame/src/dbmysql/test_client.cpp
        server_frame/src/ebus/event_bus.cpp
        server_frame/src/framework/cmdline.h
        server_frame/src/framework/exception.cpp
        server_frame/src/framework/framework.cpp
        server_frame/src/framework/framework.h
        server_frame/src/framework/frameworkmain.cpp
        server_frame/src/helper/bufferStream.cpp
        server_frame/src/helper/filehelper.cpp
        server_frame/src/helper/fileStream.cpp
        server_frame/src/helper/helper.cpp
        server_frame/src/helper/streamBase.cpp
        server_frame/src/helper/stringStream.cpp
        server_frame/src/lua_service/lua_bind.cpp
        server_frame/src/lua_service/lua_service.cpp
        server_frame/src/math/math_functions.cpp
        server_frame/src/memory/ipcutility.cpp
        server_frame/src/modern/json_wrap.cpp
        server_frame/src/network/tcp_callbacks.cpp
        server_frame/src/network/tcp_client.cc
        server_frame/src/network/tcp_conn.cc
        server_frame/src/network/tcp_server.cc
        server_frame/src/string/string_functions.cpp
        server_frame/src/string/stringutility.cpp
        server_frame/src/time/cooling.cpp
        server_frame/src/utility/basic_functions.cpp
        server_frame/src/utility/profile_manager.cpp
        servers/center_server/src/center_mgr.cpp
        servers/center_server/src/center_mgr.h
        servers/center_server/src/game_server.cpp
        servers/common/src/server_connect/server_client.cpp
        servers/common/src/server_connect/server_client.h
        servers/common/src/server_connect/server_connector.cpp
        servers/common/src/server_connect/server_connector.h
        servers/common/src/common_logic.cpp
        servers/common/src/common_logic.h
        servers/common/src/data_cfg_mgr.cpp
        servers/common/src/data_cfg_mgr.h
        servers/common/src/db_struct_define.h
        servers/common/src/game_define.h
        servers/common/src/game_server_config.cpp
        servers/common/src/game_server_config.h
        servers/common/src/player_base.cpp
        servers/common/src/player_base.h
        servers/common/src/player_mgr.cpp
        servers/common/src/player_mgr.h
        servers/common/src/redis_mgr.cpp
        servers/common/src/redis_mgr.h
        servers/dbagent_server/src/db_operator.cpp
        servers/dbagent_server/src/db_operator.h
        servers/dbagent_server/src/dbmysql_mgr.cpp
        servers/dbagent_server/src/dbmysql_mgr.h
        servers/dbagent_server/src/game_server.cpp
        servers/dbagent_server/src/server_mgr.cpp
        servers/dbagent_server/src/server_mgr.h
        servers/lobby_server/src/client_msg/msg_client_handle.cpp
        servers/lobby_server/src/client_msg/msg_client_handle.h
        servers/lobby_server/src/lua_logic/lua_logic.cpp
        servers/lobby_server/src/lua_logic/lua_logic.h
        servers/lobby_server/src/net/center_client.cpp
        servers/lobby_server/src/net/center_client.h
        servers/lobby_server/src/net/dbagent_client.cpp
        servers/lobby_server/src/net/dbagent_client.h
        servers/lobby_server/src/game_server.cpp
        servers/lobby_server/src/player.cpp
        servers/lobby_server/src/player.h
        servers/pb/src/base_msg_struct.pb.cc
        servers/pb/src/base_msg_struct.pb.h
        servers/pb/src/client_logic_msg.pb.cc
        servers/pb/src/client_logic_msg.pb.h
        servers/pb/src/error_code.pb.cc
        servers/pb/src/error_code.pb.h
        servers/pb/src/msg_define.pb.cc
        servers/pb/src/msg_define.pb.h
        servers/pb/src/res.pb.cc
        servers/pb/src/res.pb.h
        servers/pb/src/servers_msg.pb.cc
        servers/pb/src/servers_msg.pb.h)
